function a(cbB,cbC,cbD){
    cbB(cbC,cbD)
}

function b(cb,cbD){
    cb(cbD)
}

function c(cb){
    cb()
}

function d(){
    
}
a(b,c,d)


// function a() {
//     return new Promise((resolve) => {
//         b(resolve, c, d);
//     });
// }

// function b(callback, callbackC, callbackD) {
//     return new Promise((resolve) => {
//         callbackC(resolve, callbackD);
//     });
// }

// function c(callback, callbackD) {
//     return new Promise((resolve) => {
//         callbackD();
//         resolve(); 
//     });
// }

// function d() {
//     console.log('D is done');
// }

// // 使用 Promise 的链式调用
// a().then(() => b())
//     .then(() => c())
//     .then(() => d());